package com.yangwp.doutu.controller;

import com.yangwp.doutu.Utils.MapUtil;
import com.yangwp.doutu.dto.CommentRespDto;
import com.yangwp.doutu.enums.RespEnum;
import com.yangwp.doutu.model.Comment;
import com.yangwp.doutu.service.CommentService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Controller
@RequestMapping("/comment")
public class CommentController {

    @Autowired
    private CommentService commentService;

    @RequestMapping("/add")
    @ResponseBody
    public Map<String, Object> add(String userId, String content, String md5){
        if(StringUtils.isBlank(userId) || StringUtils.isBlank(content) || StringUtils.isBlank(md5)){
            return MapUtil.getMap(RespEnum.MISSING_PARAM);
        }
        if(commentService.add(userId, content, md5)){
            return MapUtil.getMap(RespEnum.OK);
        }
        return MapUtil.getMap(RespEnum.SERVER_FAIL);
    }

    @RequestMapping("/get")
    @ResponseBody
    public Map<String, Object> get(String md5){
        if(StringUtils.isBlank(md5)){
            return MapUtil.getMap(RespEnum.MISSING_PARAM);
        }

        List<CommentRespDto> respDtos = commentService.get(md5);
        if(respDtos == null){
            return MapUtil.getMap(RespEnum.PARAM_ERROR);
        }
        Map<String, Object> resp = MapUtil.getMap(RespEnum.OK);
        resp.put("data", respDtos);
        return resp;
    }

}
